package com.zhangxu.microservice.auth.biz.mapstruct;

import com.zhangxu.microservice.auth.biz.dto.CreateSystemDTO;
import com.zhangxu.microservice.auth.biz.dto.SystemDTO;
import com.zhangxu.microservice.auth.biz.dto.UpdateSystemDTO;
import com.zhangxu.microservice.auth.dao.entity.SystemDO;
import org.mapstruct.Mapper;

/**
 * 系统对象转换接口
 */
@Mapper(componentModel = "spring")
public interface SystemConverter {

    /**
     * SystemDO 转 SystemDTO
     *
     * @param systemDO 系统DO
     * @return 系统DTO
     */
    SystemDTO toSystemDTO(SystemDO systemDO);

    /**
     * CreateSystemDTO 转 SystemDO
     *
     * @param createSystemDTO 创建系统DTO
     * @return 系统DO
     */
    SystemDO toSystemDO(CreateSystemDTO createSystemDTO);

    /**
     * UpdateSystemDTO 转 SystemDO
     *
     * @param updateSystemDTO 更新系统DTO
     * @return 系统DO
     */
    SystemDO toSystemDO(UpdateSystemDTO updateSystemDTO);
}